{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\dask\\config.py:129: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.\n",
      "  data = yaml.load(f.read()) or {}\n",
      "D:\\python projects\\Projects\\Deep Learning\\GANS\\First Order Motion Model for Image Animation\\Real_Time_Image_Animation\\demo.py:2: UserWarning: \n",
      "This call to matplotlib.use() has no effect because the backend has already\n",
      "been chosen; matplotlib.use() must be called *before* pylab, matplotlib.pyplot,\n",
      "or matplotlib.backends is imported for the first time.\n",
      "\n",
      "The backend was *originally* set to 'module://ipykernel.pylab.backend_inline' by the following code:\n",
      "  File \"c:\\users\\shubham pawara\\anaconda3\\lib\\runpy.py\", line 193, in _run_module_as_main\n",
      "    \"__main__\", mod_spec)\n",
      "  File \"c:\\users\\shubham pawara\\anaconda3\\lib\\runpy.py\", line 85, in _run_code\n",
      "    exec(code, run_globals)\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\ipykernel_launcher.py\", line 16, in <module>\n",
      "    app.launch_new_instance()\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\traitlets\\config\\application.py\", line 664, in launch_instance\n",
      "    app.start()\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\ipykernel\\kernelapp.py\", line 583, in start\n",
      "    self.io_loop.start()\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\tornado\\platform\\asyncio.py\", line 149, in start\n",
      "    self.asyncio_loop.run_forever()\n",
      "  File \"c:\\users\\shubham pawara\\anaconda3\\lib\\asyncio\\base_events.py\", line 539, in run_forever\n",
      "    self._run_once()\n",
      "  File \"c:\\users\\shubham pawara\\anaconda3\\lib\\asyncio\\base_events.py\", line 1775, in _run_once\n",
      "    handle._run()\n",
      "  File \"c:\\users\\shubham pawara\\anaconda3\\lib\\asyncio\\events.py\", line 88, in _run\n",
      "    self._context.run(self._callback, *self._args)\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\tornado\\ioloop.py\", line 690, in <lambda>\n",
      "    lambda f: self._run_callback(functools.partial(callback, future))\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\tornado\\ioloop.py\", line 743, in _run_callback\n",
      "    ret = callback()\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\tornado\\gen.py\", line 787, in inner\n",
      "    self.run()\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\tornado\\gen.py\", line 748, in run\n",
      "    yielded = self.gen.send(value)\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\ipykernel\\kernelbase.py\", line 365, in process_one\n",
      "    yield gen.maybe_future(dispatch(*args))\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\tornado\\gen.py\", line 209, in wrapper\n",
      "    yielded = next(result)\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\ipykernel\\kernelbase.py\", line 268, in dispatch_shell\n",
      "    yield gen.maybe_future(handler(stream, idents, msg))\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\tornado\\gen.py\", line 209, in wrapper\n",
      "    yielded = next(result)\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\ipykernel\\kernelbase.py\", line 545, in execute_request\n",
      "    user_expressions, allow_stdin,\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\tornado\\gen.py\", line 209, in wrapper\n",
      "    yielded = next(result)\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\ipykernel\\ipkernel.py\", line 300, in do_execute\n",
      "    res = shell.run_cell(code, store_history=store_history, silent=silent)\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\ipykernel\\zmqshell.py\", line 536, in run_cell\n",
      "    return super(ZMQInteractiveShell, self).run_cell(*args, **kwargs)\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\IPython\\core\\interactiveshell.py\", line 2858, in run_cell\n",
      "    raw_cell, store_history, silent, shell_futures)\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\IPython\\core\\interactiveshell.py\", line 2886, in _run_cell\n",
      "    return runner(coro)\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\IPython\\core\\async_helpers.py\", line 68, in _pseudo_sync_runner\n",
      "    coro.send(None)\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\IPython\\core\\interactiveshell.py\", line 3063, in run_cell_async\n",
      "    interactivity=interactivity, compiler=compiler, result=result)\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\IPython\\core\\interactiveshell.py\", line 3254, in run_ast_nodes\n",
      "    if (await self.run_code(code, result,  async_=asy)):\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\IPython\\core\\interactiveshell.py\", line 3331, in run_code\n",
      "    exec(code_obj, self.user_global_ns, self.user_ns)\n",
      "  File \"<ipython-input-1-5d0da1686f8e>\", line 5, in <module>\n",
      "    from animate import normalize_kp\n",
      "  File \"D:\\python projects\\Projects\\Deep Learning\\GANS\\First Order Motion Model for Image Animation\\Real_Time_Image_Animation\\animate.py\", line 7, in <module>\n",
      "    from frames_dataset import PairedDataset\n",
      "  File \"D:\\python projects\\Projects\\Deep Learning\\GANS\\First Order Motion Model for Image Animation\\Real_Time_Image_Animation\\frames_dataset.py\", line 2, in <module>\n",
      "    from skimage import io, img_as_float32\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\skimage\\io\\__init__.py\", line 15, in <module>\n",
      "    reset_plugins()\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\skimage\\io\\manage_plugins.py\", line 95, in reset_plugins\n",
      "    _load_preferred_plugins()\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\skimage\\io\\manage_plugins.py\", line 75, in _load_preferred_plugins\n",
      "    _set_plugin(p_type, preferred_plugins['all'])\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\skimage\\io\\manage_plugins.py\", line 87, in _set_plugin\n",
      "    use_plugin(plugin, kind=plugin_type)\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\skimage\\io\\manage_plugins.py\", line 258, in use_plugin\n",
      "    _load(name)\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\skimage\\io\\manage_plugins.py\", line 302, in _load\n",
      "    fromlist=[modname])\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\skimage\\io\\_plugins\\matplotlib_plugin.py\", line 4, in <module>\n",
      "    import matplotlib.pyplot as plt\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\matplotlib\\pyplot.py\", line 71, in <module>\n",
      "    from matplotlib.backends import pylab_setup\n",
      "  File \"d:\\python projects\\projects\\deep learning\\gans\\first order motion model for image animation\\real_time_image_animation\\env\\lib\\site-packages\\matplotlib\\backends\\__init__.py\", line 16, in <module>\n",
      "    line for line in traceback.format_stack()\n",
      "\n",
      "\n",
      "  matplotlib.use('Agg')\n"
     ]
    }
   ],
   "source": [
    "import imageio\n",
    "from skimage.transform import resize\n",
    "import torch\n",
    "from tqdm import tqdm\n",
    "from animate import normalize_kp\n",
    "from demo import load_checkpoints\n",
    "import numpy as np\n",
    "from IPython.display import HTML\n",
    "import matplotlib.pyplot as plt\n",
    "import matplotlib.animation as animation\n",
    "from skimage import img_as_ubyte\n",
    "import cv2\n",
    "import os\n",
    "\n",
    "from cv2 import VideoWriter, VideoWriter_fourcc"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "D:\\python projects\\Projects\\Deep Learning\\GANS\\First Order Motion Model for Image Animation\\Real_Time_Image_Animation\\demo.py:27: YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated, as the default Loader is unsafe. Please read https://msg.pyyaml.org/load for full details.\n",
      "  config = yaml.load(f)\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "source_image = imageio.imread('Inputs/feynman.jpeg')\n",
    "source_image = resize(source_image,(256,256))[..., :3]\n",
    "generator, kp_detector = load_checkpoints(config_path='config/vox-256.yaml', checkpoint_path='checkpoints/vox-cpk.pth.tar')\n",
    "plt.imshow(source_image)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "if not os.path.exists('output'):\n",
    "    os.mkdir('output')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "relative=True\n",
    "adapt_movement_scale=True\n",
    "cpu=False\n",
    "# face_cascade = cv2.CascadeClassifier('cascades/data/haarcascade_frontalface_default.xml')\n",
    "cap = cv2.VideoCapture(0)\n",
    "\n",
    "fourcc = cv2.VideoWriter_fourcc(*'MJPG')\n",
    "out1 = cv2.VideoWriter('output/test.avi', fourcc, 12, (256*3 , 256), True)\n",
    "\n",
    "cv2_source = cv2.cvtColor(source_image.astype('float32'),cv2.COLOR_BGR2RGB)\n",
    "with torch.no_grad() :\n",
    "    predictions = []\n",
    "    source = torch.tensor(source_image[np.newaxis].astype(np.float32)).permute(0, 3, 1, 2)\n",
    "    if not cpu:\n",
    "        source = source.cuda()\n",
    "    kp_source = kp_detector(source)\n",
    "    count = 0\n",
    "    while(True):\n",
    "        ims = [source_image]\n",
    "        ret, frame = cap.read()\n",
    "        \n",
    "#         out1.write(frame)\n",
    "        frame = cv2.flip(frame,1)\n",
    "        \n",
    "#         faces = face_cascade.detectMultiScale(frame, scaleFactor=1.5, minNeighbors=5)\n",
    "#         if len(faces) != 0:\n",
    "#             x,y,w,h = faces[0]\n",
    "#             x = x-70\n",
    "#             y = y-70\n",
    "#             w = w+140\n",
    "#             h = h+140\n",
    "#             print(x,y,w,h,faces[0])\n",
    "#         else:\n",
    "        x = 143\n",
    "        y = 87\n",
    "        w = 322\n",
    "        h = 322 \n",
    "\n",
    "        frame = frame[y:y+h,x:x+w]\n",
    "#         test = img_as_ubyte(frame)\n",
    "#         out1.write(test)\n",
    "        frame1 = resize(frame,(256,256))[..., :3]\n",
    "#         cv2.imwrite('output/test'+str(count)+'.jpg',img_as_ubyte(frame1))\n",
    "        if count == 0:\n",
    "            source_image1 = frame1\n",
    "            source1 = torch.tensor(source_image1[np.newaxis].astype(np.float32)).permute(0, 3, 1, 2)\n",
    "            kp_driving_initial = kp_detector(source1)\n",
    "        \n",
    "        frame_test = torch.tensor(frame1[np.newaxis].astype(np.float32)).permute(0, 3, 1, 2)\n",
    "\n",
    "        driving_frame = frame_test\n",
    "        if not cpu:\n",
    "            driving_frame = driving_frame.cuda()\n",
    "        kp_driving = kp_detector(driving_frame)\n",
    "        kp_norm = normalize_kp(kp_source=kp_source,\n",
    "                               kp_driving=kp_driving,\n",
    "                               kp_driving_initial=kp_driving_initial, \n",
    "                               use_relative_movement=relative,\n",
    "                               use_relative_jacobian=relative, \n",
    "                               adapt_movement_scale=adapt_movement_scale)\n",
    "        out = generator(source, kp_source=kp_source, kp_driving=kp_norm)\n",
    "        predictions.append(np.transpose(out['prediction'].data.cpu().numpy(), [0, 2, 3, 1])[0])\n",
    "        im = np.transpose(out['prediction'].data.cpu().numpy(), [0, 2, 3, 1])[0]\n",
    "        im = cv2.cvtColor(im,cv2.COLOR_RGB2BGR)\n",
    "        joinedFrame = np.concatenate((cv2_source,im,frame1),axis=1)\n",
    "        \n",
    "        cv2.imshow('Test',joinedFrame)\n",
    "        out1.write(img_as_ubyte(joinedFrame))\n",
    "        count += 1\n",
    "        if cv2.waitKey(20) & 0xFF == ord('q'):\n",
    "            break\n",
    "        \n",
    "    cap.release()\n",
    "    out1.release()\n",
    "    cv2.destroyAllWindows()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
